﻿/**************************************************************************
 * FileName：ICardverificationInterface
 * Function：银行账号验证接口
 * Description：
 * Version：
 * ------------------------------------------
 * CreateTime：2024/5/21 10:26
 * Author：金文旭
 * Email： ohayashi@163.com
 * =============================================
 * 
 * Modifyier：	
 * ModifyTime：	
 * Description：	
 ***************************************************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;

namespace DesignPractise.CardCheck
{
    public interface ICardVerificationInterface
    {
        /// <summary>
        /// 对用户的银行账号进行验证
        /// </summary>
        /// <param name="cardNo"></param>
        /// <param name="customerNm"></param>
        /// <param name="phoneNo"></param>
        /// <param name="certifId"></param>
        /// <param name="appId"></param>
        /// <param name="appPwd"></param>
        /// <param name="certifTp"></param>
        /// <param name="transCode"></param>
        /// <returns>针对该用户银行账号的验证信息</returns>
        CardVeriMessage ExcuteCardVerification(string cardNo, string customerNm, string phoneNo, string certifId, string certifTp, string transCode, string appId, string appPwd);
        CardVeriMessage ExcuteCardVerification(string cardNo, string customerNm, string phoneNo, string certifId, string? certifTp = null, string? transCode = null);
        /// <summary>
        /// 提前填入商户账号密码,提高执行方法效率
        /// </summary>
        /// <param name="appId"></param>
        /// <param name="appPwd"></param>
        /// <returns></returns>
        bool InitAppData(string appId,string appPwd);
    }
}
